This last statement demonstrates the C ASSIGNMENT OPERATOR '='. This operator assigns the value of its rightmost operand to the leftmost operand. Since '=' is an operator, however, the assignment expression has a value of its own: THE VALUE WHICH WAS ASSIGNED. Therefore in the following example the value of '(a=6)' is 6, so the value 12 is assigned to the integer variable b:
int a;
int b;
b = 2 * (a=6);
In this example the variable 'a' is assigned the value 6 as a "side effect" of the expression '2 * (a=6)'.